local net_init = {}

sys.taskInit(function()
    if wlan and wlan.connect then
        log.info("WIFI连接配置", "SSID：", config.wifi_ssid, "PassWord：", config.wifi_pwd)
        local wifi_info = wlan.init() -- WIFI功能初始化
        log.info("WIFI初始化状态：", wifi_info)
        wifi_info = wlan.setMode(config.wifi_mode)
        log.info("WIFI模式设置状态：", wifi_info, "当前模式：", config.wifi_mode:tostring())
        wifi_info = wlan.config(config.wifi_ssid, config.wifi_pwd, config.reconnect)
        log.info("WIFI连接状态：", wifi_info, "是否重连:", config.wifi_reconnect)
        config.device_id = wlan.getMac() -- 获取MAC地址作为唯一ID
    elseif mobile then
        mobile.ipv6(true) -- 开启IPV6
        -- 获取手机IMEI作为唯一ID
        config.device_id = mobile.imei()
    else
        while 1 do
            sys.wait(1000)
            log.error("固件出错:",
                "该固件不支持WIFI或移动网络功能，请核实是否使用正确固件。")
        end
    end
    -- 设置DNS服务器
    socket.setDNS(nil, 1, "2400:3200::1")
    socket.setDNS(nil, 2, "114.114.114.114")

    -- 联网成功，可以开始执行任务
    sys.waitUntil("IP_READY") -- 等待IP地址获取成功
    
    sys.publish("NET_READY", config.device_id) -- 发布网络就绪事件
end)

return net_init
